Patch from ChiDeok Hwang to move call to sync_selection() up a few lines
authorOwen Taylor <otaylor@redhat.com>
Fri, 2 Mar 2001 17:06:14 +0000 (17:06 +0000)
committerOwen Taylor <otaylor@src.gnome.org>
Fri, 2 Mar 2001 17:06:14 +0000 (17:06 +0000)
Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
Hwang to move call to sync_selection() up a few lines
to before the row list is modified, to fix crash when
removing rows in the undo_selection list.

(Test case provided by Daniel Elstner:

        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)

Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtktree.c (gtk_tree_class_init): Do the setting
of tree->root_tree in parent_set rather than _map(),
fixing #50892 in a bit better manner.

Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)

Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>

* gtk/gtkstyle.c : Remove duplicate fwd decl for
gtk_default_draw_shadow.

ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>

* gdk/gdkimage.c (gdk_image_new): Remove excess
warning, make warnings more verbose, treat a error
in shmat as permanent, and don't try again.
(#51163, Ed Randall.)

Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
delay for the first click before starting to scroll.
(based on #51026, gtk-enf-990512-0.patch, Eric Fisher)

* gtk/gtktext.c: GtkText should have I-beam cursor.
(based on gtk-enf-990513-1.patch, Eric Fisher.)

Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
cleanup to remove some references to unused
->xoffset, ->yoffset.

Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>

* gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
mask. (#51039, fix from Martin Maierhofer)

Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
for unshifted + and shifted = for non-us keyboards.
Make <Control>+ and <Control>- work as well as
<Control>KP_Plus, <Control>KP_Minus for recursive
open/close.  (#2682, René Seindal)

Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
the active menu item before deactivating the menu,
so gtk_menu_popdown doesn't change the history. (#50964)

Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtktreeitem.c (gtk_tree_item_draw_lines):
draw lines with text_gc rather than black_gc.
(Patch from Vlad Harchev <hvv hippo ru>, #50926)

19 files changed:
ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gdk/gdkrgb.c
gdk/x11/gdkimage-x11.c
gtk/gtkclist.c
gtk/gtkctree.c
gtk/gtklayout.c
gtk/gtkmenu.c
gtk/gtkmenushell.c
gtk/gtkrange.c
gtk/gtkstyle.c
gtk/gtktext.c
gtk/gtktree.c
gtk/gtktreeitem.c

index 91d70d3001e94f8d3ccca0a2a869dd4a174e8170..fc0b1c765a2f3dab353fe9c81fd22dc8ff8e9914 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,76 @@
+Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
+       Hwang to move call to sync_selection() up a few lines
+       to before the row list is modified, to fix crash when
+       removing rows in the undo_selection list.
+
+       (Test case provided by Daniel Elstner:
+
+        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
+
+Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktree.c (gtk_tree_class_init): Do the setting
+       of tree->root_tree in parent_set rather than _map(), 
+       fixing #50892 in a bit better manner.
+
+Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
+
+Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
+
+       * gtk/gtkstyle.c : Remove duplicate fwd decl for
+       gtk_default_draw_shadow.
+
+ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkimage.c (gdk_image_new): Remove excess 
+       warning, make warnings more verbose, treat a error
+       in shmat as permanent, and don't try again.
+       (#51163, Ed Randall.)
+
+Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
+       delay for the first click before starting to scroll.
+       (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
+
+       * gtk/gtktext.c: GtkText should have I-beam cursor. 
+       (based on gtk-enf-990513-1.patch, Eric Fisher.)
+
+Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
+       cleanup to remove some references to unused
+       ->xoffset, ->yoffset.
+
+Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
+       mask. (#51039, fix from Martin Maierhofer)
+
+Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
+       for unshifted + and shifted = for non-us keyboards.
+       Make <Control>+ and <Control>- work as well as 
+       <Control>KP_Plus, <Control>KP_Minus for recursive
+       open/close.  (#2682, René Seindal)
+
+Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
+       the active menu item before deactivating the menu,
+       so gtk_menu_popdown doesn't change the history. (#50964)
+       
+Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
+       draw lines with text_gc rather than black_gc.
+       (Patch from Vlad Harchev <hvv hippo ru>, #50926)
+
 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
index 91d70d3001e94f8d3ccca0a2a869dd4a174e8170..fc0b1c765a2f3dab353fe9c81fd22dc8ff8e9914 100644 (file)
@@ -1,3 +1,76 @@
+Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
+       Hwang to move call to sync_selection() up a few lines
+       to before the row list is modified, to fix crash when
+       removing rows in the undo_selection list.
+
+       (Test case provided by Daniel Elstner:
+
+        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
+
+Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktree.c (gtk_tree_class_init): Do the setting
+       of tree->root_tree in parent_set rather than _map(), 
+       fixing #50892 in a bit better manner.
+
+Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
+
+Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
+
+       * gtk/gtkstyle.c : Remove duplicate fwd decl for
+       gtk_default_draw_shadow.
+
+ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkimage.c (gdk_image_new): Remove excess 
+       warning, make warnings more verbose, treat a error
+       in shmat as permanent, and don't try again.
+       (#51163, Ed Randall.)
+
+Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
+       delay for the first click before starting to scroll.
+       (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
+
+       * gtk/gtktext.c: GtkText should have I-beam cursor. 
+       (based on gtk-enf-990513-1.patch, Eric Fisher.)
+
+Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
+       cleanup to remove some references to unused
+       ->xoffset, ->yoffset.
+
+Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
+       mask. (#51039, fix from Martin Maierhofer)
+
+Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
+       for unshifted + and shifted = for non-us keyboards.
+       Make <Control>+ and <Control>- work as well as 
+       <Control>KP_Plus, <Control>KP_Minus for recursive
+       open/close.  (#2682, René Seindal)
+
+Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
+       the active menu item before deactivating the menu,
+       so gtk_menu_popdown doesn't change the history. (#50964)
+       
+Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
+       draw lines with text_gc rather than black_gc.
+       (Patch from Vlad Harchev <hvv hippo ru>, #50926)
+
 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
index 91d70d3001e94f8d3ccca0a2a869dd4a174e8170..fc0b1c765a2f3dab353fe9c81fd22dc8ff8e9914 100644 (file)
@@ -1,3 +1,76 @@
+Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
+       Hwang to move call to sync_selection() up a few lines
+       to before the row list is modified, to fix crash when
+       removing rows in the undo_selection list.
+
+       (Test case provided by Daniel Elstner:
+
+        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
+
+Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktree.c (gtk_tree_class_init): Do the setting
+       of tree->root_tree in parent_set rather than _map(), 
+       fixing #50892 in a bit better manner.
+
+Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
+
+Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
+
+       * gtk/gtkstyle.c : Remove duplicate fwd decl for
+       gtk_default_draw_shadow.
+
+ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkimage.c (gdk_image_new): Remove excess 
+       warning, make warnings more verbose, treat a error
+       in shmat as permanent, and don't try again.
+       (#51163, Ed Randall.)
+
+Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
+       delay for the first click before starting to scroll.
+       (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
+
+       * gtk/gtktext.c: GtkText should have I-beam cursor. 
+       (based on gtk-enf-990513-1.patch, Eric Fisher.)
+
+Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
+       cleanup to remove some references to unused
+       ->xoffset, ->yoffset.
+
+Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
+       mask. (#51039, fix from Martin Maierhofer)
+
+Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
+       for unshifted + and shifted = for non-us keyboards.
+       Make <Control>+ and <Control>- work as well as 
+       <Control>KP_Plus, <Control>KP_Minus for recursive
+       open/close.  (#2682, René Seindal)
+
+Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
+       the active menu item before deactivating the menu,
+       so gtk_menu_popdown doesn't change the history. (#50964)
+       
+Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
+       draw lines with text_gc rather than black_gc.
+       (Patch from Vlad Harchev <hvv hippo ru>, #50926)
+
 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
index 91d70d3001e94f8d3ccca0a2a869dd4a174e8170..fc0b1c765a2f3dab353fe9c81fd22dc8ff8e9914 100644 (file)
@@ -1,3 +1,76 @@
+Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
+       Hwang to move call to sync_selection() up a few lines
+       to before the row list is modified, to fix crash when
+       removing rows in the undo_selection list.
+
+       (Test case provided by Daniel Elstner:
+
+        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
+
+Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktree.c (gtk_tree_class_init): Do the setting
+       of tree->root_tree in parent_set rather than _map(), 
+       fixing #50892 in a bit better manner.
+
+Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
+
+Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
+
+       * gtk/gtkstyle.c : Remove duplicate fwd decl for
+       gtk_default_draw_shadow.
+
+ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkimage.c (gdk_image_new): Remove excess 
+       warning, make warnings more verbose, treat a error
+       in shmat as permanent, and don't try again.
+       (#51163, Ed Randall.)
+
+Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
+       delay for the first click before starting to scroll.
+       (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
+
+       * gtk/gtktext.c: GtkText should have I-beam cursor. 
+       (based on gtk-enf-990513-1.patch, Eric Fisher.)
+
+Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
+       cleanup to remove some references to unused
+       ->xoffset, ->yoffset.
+
+Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
+       mask. (#51039, fix from Martin Maierhofer)
+
+Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
+       for unshifted + and shifted = for non-us keyboards.
+       Make <Control>+ and <Control>- work as well as 
+       <Control>KP_Plus, <Control>KP_Minus for recursive
+       open/close.  (#2682, René Seindal)
+
+Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
+       the active menu item before deactivating the menu,
+       so gtk_menu_popdown doesn't change the history. (#50964)
+       
+Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
+       draw lines with text_gc rather than black_gc.
+       (Patch from Vlad Harchev <hvv hippo ru>, #50926)
+
 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
index 91d70d3001e94f8d3ccca0a2a869dd4a174e8170..fc0b1c765a2f3dab353fe9c81fd22dc8ff8e9914 100644 (file)
@@ -1,3 +1,76 @@
+Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
+       Hwang to move call to sync_selection() up a few lines
+       to before the row list is modified, to fix crash when
+       removing rows in the undo_selection list.
+
+       (Test case provided by Daniel Elstner:
+
+        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
+
+Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktree.c (gtk_tree_class_init): Do the setting
+       of tree->root_tree in parent_set rather than _map(), 
+       fixing #50892 in a bit better manner.
+
+Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
+
+Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
+
+       * gtk/gtkstyle.c : Remove duplicate fwd decl for
+       gtk_default_draw_shadow.
+
+ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkimage.c (gdk_image_new): Remove excess 
+       warning, make warnings more verbose, treat a error
+       in shmat as permanent, and don't try again.
+       (#51163, Ed Randall.)
+
+Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
+       delay for the first click before starting to scroll.
+       (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
+
+       * gtk/gtktext.c: GtkText should have I-beam cursor. 
+       (based on gtk-enf-990513-1.patch, Eric Fisher.)
+
+Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
+       cleanup to remove some references to unused
+       ->xoffset, ->yoffset.
+
+Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
+       mask. (#51039, fix from Martin Maierhofer)
+
+Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
+       for unshifted + and shifted = for non-us keyboards.
+       Make <Control>+ and <Control>- work as well as 
+       <Control>KP_Plus, <Control>KP_Minus for recursive
+       open/close.  (#2682, René Seindal)
+
+Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
+       the active menu item before deactivating the menu,
+       so gtk_menu_popdown doesn't change the history. (#50964)
+       
+Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
+       draw lines with text_gc rather than black_gc.
+       (Patch from Vlad Harchev <hvv hippo ru>, #50926)
+
 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
index 91d70d3001e94f8d3ccca0a2a869dd4a174e8170..fc0b1c765a2f3dab353fe9c81fd22dc8ff8e9914 100644 (file)
@@ -1,3 +1,76 @@
+Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
+       Hwang to move call to sync_selection() up a few lines
+       to before the row list is modified, to fix crash when
+       removing rows in the undo_selection list.
+
+       (Test case provided by Daniel Elstner:
+
+        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
+
+Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktree.c (gtk_tree_class_init): Do the setting
+       of tree->root_tree in parent_set rather than _map(), 
+       fixing #50892 in a bit better manner.
+
+Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
+
+Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
+
+       * gtk/gtkstyle.c : Remove duplicate fwd decl for
+       gtk_default_draw_shadow.
+
+ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkimage.c (gdk_image_new): Remove excess 
+       warning, make warnings more verbose, treat a error
+       in shmat as permanent, and don't try again.
+       (#51163, Ed Randall.)
+
+Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
+       delay for the first click before starting to scroll.
+       (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
+
+       * gtk/gtktext.c: GtkText should have I-beam cursor. 
+       (based on gtk-enf-990513-1.patch, Eric Fisher.)
+
+Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
+       cleanup to remove some references to unused
+       ->xoffset, ->yoffset.
+
+Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
+       mask. (#51039, fix from Martin Maierhofer)
+
+Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
+       for unshifted + and shifted = for non-us keyboards.
+       Make <Control>+ and <Control>- work as well as 
+       <Control>KP_Plus, <Control>KP_Minus for recursive
+       open/close.  (#2682, René Seindal)
+
+Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
+       the active menu item before deactivating the menu,
+       so gtk_menu_popdown doesn't change the history. (#50964)
+       
+Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
+       draw lines with text_gc rather than black_gc.
+       (Patch from Vlad Harchev <hvv hippo ru>, #50926)
+
 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
index 91d70d3001e94f8d3ccca0a2a869dd4a174e8170..fc0b1c765a2f3dab353fe9c81fd22dc8ff8e9914 100644 (file)
@@ -1,3 +1,76 @@
+Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
+       Hwang to move call to sync_selection() up a few lines
+       to before the row list is modified, to fix crash when
+       removing rows in the undo_selection list.
+
+       (Test case provided by Daniel Elstner:
+
+        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
+
+Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktree.c (gtk_tree_class_init): Do the setting
+       of tree->root_tree in parent_set rather than _map(), 
+       fixing #50892 in a bit better manner.
+
+Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
+
+Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
+
+       * gtk/gtkstyle.c : Remove duplicate fwd decl for
+       gtk_default_draw_shadow.
+
+ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkimage.c (gdk_image_new): Remove excess 
+       warning, make warnings more verbose, treat a error
+       in shmat as permanent, and don't try again.
+       (#51163, Ed Randall.)
+
+Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
+       delay for the first click before starting to scroll.
+       (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
+
+       * gtk/gtktext.c: GtkText should have I-beam cursor. 
+       (based on gtk-enf-990513-1.patch, Eric Fisher.)
+
+Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
+       cleanup to remove some references to unused
+       ->xoffset, ->yoffset.
+
+Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
+       mask. (#51039, fix from Martin Maierhofer)
+
+Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
+       for unshifted + and shifted = for non-us keyboards.
+       Make <Control>+ and <Control>- work as well as 
+       <Control>KP_Plus, <Control>KP_Minus for recursive
+       open/close.  (#2682, René Seindal)
+
+Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
+       the active menu item before deactivating the menu,
+       so gtk_menu_popdown doesn't change the history. (#50964)
+       
+Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
+       draw lines with text_gc rather than black_gc.
+       (Patch from Vlad Harchev <hvv hippo ru>, #50926)
+
 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
 
        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
index 3e6a4cda6fe5d9963bb8d7aac6c99ee1027c74d8..2cc9eec3f8a0725acebf90e64b63ab272752a800 100644 (file)
@@ -1926,7 +1926,7 @@ gdk_rgb_convert_555_br (GdkRgbInfo *image_info, GdkImage *image,
           */
          ((unsigned short *)obuf)[x] = ((r & 0xf8) >> 1) |
            ((g & 0xc0) >> 6) |
-           ((g & 0x18) << 10) |
+           ((g & 0x38) << 10) |
            ((b & 0xf8) << 5);
        }
       bptr += rowstride;
index 4fe54dd09e81e91e5419aec18bc7570affb273a1..c54441c17b17c403a5a2047d52895c55b691379d 100644 (file)
@@ -267,7 +267,7 @@ gdk_image_new (GdkImageType  type,
                   */
                  if (errno != EINVAL)
                    {
-                     g_warning ("shmget failed!");
+                     g_warning ("shmget failed: error %d (%s)", errno, g_strerror (errno));
                      gdk_use_xshm = False;
                    }
 
@@ -284,7 +284,7 @@ gdk_image_new (GdkImageType  type,
 
              if (x_shm_info->shmaddr == (char*) -1)
                {
-                 g_warning ("shmat failed!");
+                 g_warning ("shmat failed: error %d (%s)", errno, g_strerror (errno));
 
                  XDestroyImage (private->ximage);
                  shmctl (x_shm_info->shmid, IPC_RMID, 0);
@@ -292,6 +292,12 @@ gdk_image_new (GdkImageType  type,
                  g_free (private->x_shm_info);
                  g_free (image);
 
+                 /* Failure in shmat is almost certainly permanent. Most likely error is
+                  * EMFILE, which would mean that we've exceeded the per-process
+                  * Shm segment limit.
+                  */
+                 gdk_use_xshm = False;
+                 
                  return NULL;
                }
 
index 2c8dec11d3b658f21c8a6515769c627a601ce0df..334df0ce15b2b25b6aac8194a85a773740d28777 100644 (file)
@@ -2788,6 +2788,8 @@ real_remove_row (GtkCList *clist,
     gtk_signal_emit (GTK_OBJECT (clist), clist_signals[UNSELECT_ROW],
                     row, -1, NULL);
 
+  sync_selection (clist, row, SYNC_REMOVE);
+
   /* reset the row end pointer if we're removing at the end of the list */
   clist->rows--;
   if (clist->row_list == list)
@@ -2803,8 +2805,6 @@ real_remove_row (GtkCList *clist,
   if (row < ROW_FROM_YPIXEL (clist, 0))
     clist->voffset += clist->row_height + CELL_SPACING;
 
-  sync_selection (clist, row, SYNC_REMOVE);
-
   if (clist->selection_mode == GTK_SELECTION_BROWSE && !clist->selection &&
       clist->focus_row >= 0)
     gtk_signal_emit (GTK_OBJECT (clist), clist_signals[SELECT_ROW],
index c831f8d07aca39bccd878753e04d7e8853f8f193..111398274299fe7c4df80162d338e5a58a5cb05a 100644 (file)
@@ -477,6 +477,18 @@ gtk_ctree_class_init (GtkCTreeClass *klass)
                                '+', GDK_SHIFT_MASK,
                                "change_focus_row_expansion", 1,
                                GTK_TYPE_ENUM, GTK_CTREE_EXPANSION_EXPAND);
+  gtk_binding_entry_add_signal (binding_set,
+                               '+', 0,
+                               "change_focus_row_expansion", 1,
+                               GTK_TYPE_ENUM, GTK_CTREE_EXPANSION_EXPAND);
+  gtk_binding_entry_add_signal (binding_set,
+                               '+', GDK_CONTROL_MASK | GDK_SHIFT_MASK,
+                               "change_focus_row_expansion", 1,
+                               GTK_TYPE_ENUM, GTK_CTREE_EXPANSION_EXPAND_RECURSIVE);
+  gtk_binding_entry_add_signal (binding_set,
+                               '+', GDK_CONTROL_MASK,
+                               "change_focus_row_expansion", 1,
+                               GTK_TYPE_ENUM, GTK_CTREE_EXPANSION_EXPAND_RECURSIVE);
   gtk_binding_entry_add_signal (binding_set,
                                GDK_KP_Add, 0,
                                "change_focus_row_expansion", 1,
@@ -490,6 +502,11 @@ gtk_ctree_class_init (GtkCTreeClass *klass)
                                '-', 0,
                                "change_focus_row_expansion", 1,
                                GTK_TYPE_ENUM, GTK_CTREE_EXPANSION_COLLAPSE);
+  gtk_binding_entry_add_signal (binding_set,
+                               '-', GDK_CONTROL_MASK,
+                               "change_focus_row_expansion", 1,
+                               GTK_TYPE_ENUM,
+                               GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE);
   gtk_binding_entry_add_signal (binding_set,
                                GDK_KP_Subtract, 0,
                                "change_focus_row_expansion", 1,
@@ -503,6 +520,10 @@ gtk_ctree_class_init (GtkCTreeClass *klass)
                                '=', 0,
                                "change_focus_row_expansion", 1,
                                GTK_TYPE_ENUM, GTK_CTREE_EXPANSION_TOGGLE);
+  gtk_binding_entry_add_signal (binding_set,
+                               '=', GDK_SHIFT_MASK,
+                               "change_focus_row_expansion", 1,
+                               GTK_TYPE_ENUM, GTK_CTREE_EXPANSION_TOGGLE);
   gtk_binding_entry_add_signal (binding_set,
                                GDK_KP_Multiply, 0,
                                "change_focus_row_expansion", 1,
index 4de204496b56b5e4f4cd9cf6850c0f19bbe13eea..48bfa2ec760162a23e40fb69446968c0191c4392 100644 (file)
@@ -704,8 +704,8 @@ gtk_layout_allocate_child (GtkLayout      *layout,
   GtkAllocation allocation;
   GtkRequisition requisition;
 
-  allocation.x = child->x - layout->xoffset;
-  allocation.y = child->y - layout->yoffset;
+  allocation.x = child->x;
+  allocation.y = child->y;
   gtk_widget_get_child_requisition (child->widget, &requisition);
   allocation.width = requisition.width;
   allocation.height = requisition.height;
index bdca0371a64d1298ea94674a19e83b0981f2f36f..72a2270712f10eed719b775ba2d0bee28b6f351c 100644 (file)
@@ -568,24 +568,18 @@ gtk_menu_popup (GtkMenu               *menu,
   
   if (xgrab_shell && (!GTK_MENU_SHELL (xgrab_shell)->have_xgrab))
     {
-      GdkCursor *cursor = gdk_cursor_new (GDK_ARROW);
-
       if ((gdk_pointer_grab (xgrab_shell->window, TRUE,
                             GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
                             GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK |
                             GDK_POINTER_MOTION_MASK,
-                            NULL, cursor, activate_time) == 0))
+                            NULL, NULL, activate_time) == 0))
        {
          if (gdk_keyboard_grab (xgrab_shell->window, TRUE,
                              activate_time) == 0)
            GTK_MENU_SHELL (xgrab_shell)->have_xgrab = TRUE;
          else
-           {
-             gdk_pointer_ungrab (activate_time);
-           }
+           gdk_pointer_ungrab (activate_time);
        }
-
-      gdk_cursor_destroy (cursor);
     }
 
   gtk_menu_scroll_to (menu, menu->scroll_offset);
index 04fa940b3c4563592d3b4aeaba1fed9aa531614e..96765471f407880e724a666b3188e42d11b3a135 100644 (file)
@@ -1040,6 +1040,10 @@ gtk_real_menu_shell_activate_current (GtkMenuShell      *menu_shell,
 static void
 gtk_real_menu_shell_cancel (GtkMenuShell      *menu_shell)
 {
+  /* Unset the active menu item so gtk_menu_popdown() doesn't see it.
+   */
+  gtk_menu_shell_deselect (menu_shell);
+  
   gtk_menu_shell_deactivate (menu_shell);
   gtk_signal_emit (GTK_OBJECT (menu_shell), menu_shell_signals[SELECTION_DONE]);
 }
index 2ffcc963b59bc5e7e467a082fd7276dec9ea4bcb..664b77d6c3f9708132798d6b66a15d6c09b74ce3 100644 (file)
@@ -30,7 +30,8 @@
 #include "gtksignal.h"
 
 #define SCROLL_TIMER_LENGTH  20
-#define SCROLL_INITIAL_DELAY 100
+#define SCROLL_INITIAL_DELAY 250  /* must hold button this long before ... */
+#define SCROLL_LATER_DELAY   100  /* ... it starts repeating at this rate  */
 #define SCROLL_DELAY_LENGTH  300
 
 #define RANGE_CLASS(w)  GTK_RANGE_GET_CLASS (w)
@@ -1519,6 +1520,35 @@ gtk_range_scroll (GtkRange *range,
 }
 
 
+static gboolean
+gtk_range_timer_1st_time (GtkRange *range)
+{
+  /*
+   * If the real timeout function succeeds and the timeout is still set,
+   * replace it with a quicker one so successive scrolling goes faster.
+   */
+  gtk_object_ref (GTK_OBJECT (range));
+
+  if (RANGE_CLASS (range)->timer (range))
+    {
+      if (range->timer)
+       {
+         /* We explicitely remove ourselves here in the paranoia
+          * that due to things happening above in the callback
+          * above, we might have been removed, and another added.
+          */
+         g_source_remove (range->timer);
+         range->timer = gtk_timeout_add (SCROLL_LATER_DELAY,
+                                         (GtkFunction) RANGE_CLASS (range)->timer,
+                                         range);
+       }
+    }
+  
+  gtk_object_unref (GTK_OBJECT (range));
+  
+  return FALSE;  /* don't keep calling this function */
+}
+
 static void
 gtk_range_add_timer (GtkRange *range)
 {
@@ -1528,8 +1558,8 @@ gtk_range_add_timer (GtkRange *range)
     {
       range->need_timer = TRUE;
       range->timer = gtk_timeout_add (SCROLL_INITIAL_DELAY,
-                                     (GtkFunction) RANGE_CLASS (range)->timer,
-                                     (gpointer) range);
+                                     (GtkFunction) gtk_range_timer_1st_time,
+                                     range);
     }
 }
 
index 20013e4f5614678e93b3cdd838b7f627d1b74346..b225405edf525392ea92644c03d790b09f21009f 100644 (file)
@@ -96,17 +96,6 @@ static void gtk_default_draw_shadow     (GtkStyle        *style,
                                         gint             y,
                                         gint             width,
                                         gint             height);
-static void gtk_default_draw_shadow     (GtkStyle        *style,
-                                        GdkWindow       *window,
-                                        GtkStateType     state_type,
-                                        GtkShadowType    shadow_type,
-                                        GdkRectangle    *area,
-                                        GtkWidget       *widget,
-                                        const gchar     *detail,
-                                        gint             x,
-                                        gint             y,
-                                        gint             width,
-                                        gint             height);
 static void gtk_default_draw_polygon    (GtkStyle        *style,
                                         GdkWindow       *window,
                                         GtkStateType     state_type,
index 243e7fd1d01447beb2ca979210cfd119648699c9..95aef29b8b0a02b4c2c740426b0f77f96b5e312f 100644 (file)
@@ -1310,9 +1310,14 @@ gtk_text_realize (GtkWidget *widget)
   attributes.y = (widget->style->ythickness + TEXT_BORDER_ROOM);
   attributes.width = MAX (1, (gint)widget->allocation.width - (gint)attributes.x * 2);
   attributes.height = MAX (1, (gint)widget->allocation.height - (gint)attributes.y * 2);
+
+  attributes.cursor = gdk_cursor_new (GDK_XTERM);
+  attributes_mask |= GDK_WA_CURSOR;
   
   text->text_area = gdk_window_new (widget->window, &attributes, attributes_mask);
   gdk_window_set_user_data (text->text_area, text);
+
+  gdk_cursor_destroy (attributes.cursor); /* The X server will keep it around as long as necessary */
   
   widget->style = gtk_style_attach (widget->style, widget->window);
   
index 1102a98eba681da69935476c15659b12d4dfc3aa..a8183ad5255fa3b6e12106dc8b2095db098acf8e 100644 (file)
@@ -43,6 +43,8 @@ static void gtk_tree_class_init      (GtkTreeClass   *klass);
 static void gtk_tree_init            (GtkTree        *tree);
 static void gtk_tree_destroy         (GtkObject      *object);
 static void gtk_tree_map             (GtkWidget      *widget);
+static void gtk_tree_parent_set      (GtkWidget      *widget,
+                                     GtkWidget      *previous_parent);
 static void gtk_tree_unmap           (GtkWidget      *widget);
 static void gtk_tree_realize         (GtkWidget      *widget);
 static gint gtk_tree_expose          (GtkWidget      *widget,
@@ -117,6 +119,7 @@ gtk_tree_class_init (GtkTreeClass *class)
   
   widget_class->map = gtk_tree_map;
   widget_class->unmap = gtk_tree_unmap;
+  widget_class->parent_set = gtk_tree_parent_set;
   widget_class->realize = gtk_tree_realize;
   widget_class->expose_event = gtk_tree_expose;
   widget_class->motion_notify_event = gtk_tree_motion_notify;
@@ -170,7 +173,7 @@ static void
 gtk_tree_init (GtkTree *tree)
 {
   tree->children = NULL;
-  tree->root_tree = NULL;
+  tree->root_tree = tree;
   tree->selection = NULL;
   tree->tree_owner = NULL;
   tree->selection_mode = GTK_SELECTION_SINGLE;
@@ -503,21 +506,44 @@ gtk_tree_forall (GtkContainer *container,
 }
 
 static void
-gtk_tree_map (GtkWidget *widget)
+gtk_tree_unselect_all (GtkTree *tree)
 {
-  GtkTree *tree;
+  GList *tmp_list, *selection;
+  GtkWidget *tmp_item;
+      
+  selection = tree->selection;
+  tree->selection = NULL;
+
+  tmp_list = selection;
+  while (tmp_list)
+    {
+      tmp_item = selection->data;
+
+      if (tmp_item->parent &&
+         GTK_IS_TREE (tmp_item->parent) &&
+         GTK_TREE (tmp_item->parent)->root_tree == tree)
+       gtk_tree_item_deselect (GTK_TREE_ITEM (tmp_item));
+
+      gtk_widget_unref (tmp_item);
+
+      tmp_list = tmp_list->next;
+    }
+
+  g_list_free (selection);
+}
+
+static void
+gtk_tree_parent_set (GtkWidget *widget,
+                    GtkWidget *previous_parent)
+{
+  GtkTree *tree = GTK_TREE (widget);
   GtkWidget *child;
   GList *children;
   
-  
-  g_return_if_fail (widget != NULL);
-  g_return_if_fail (GTK_IS_TREE (widget));
-  
-  GTK_WIDGET_SET_FLAGS (widget, GTK_MAPPED);
-  tree = GTK_TREE (widget);
-  
-  if(GTK_IS_TREE(widget->parent)) 
+  if (widget->parent && GTK_IS_TREE (widget->parent))
     {
+      gtk_tree_unselect_all (tree);
+      
       /* set root tree for this tree */
       tree->root_tree = GTK_TREE(widget->parent)->root_tree;
       
@@ -527,9 +553,34 @@ gtk_tree_map (GtkWidget *widget)
        tree->indent_value;
       tree->view_mode = GTK_TREE(GTK_WIDGET(tree)->parent)->view_mode;
       tree->view_line = GTK_TREE(GTK_WIDGET(tree)->parent)->view_line;
-    } 
+    }
   else
-    tree->root_tree = tree;
+    {
+      tree->root_tree = tree;
+      
+      tree->level = 0;
+      tree->current_indent = 0;
+    }
+
+  children = tree->children;
+  while (children)
+    {
+      child = children->data;
+      children = children->next;
+      
+      if (GTK_TREE_ITEM (child)->subtree)
+       gtk_tree_parent_set (GTK_TREE_ITEM (child)->subtree, child);
+    }
+}
+
+static void
+gtk_tree_map (GtkWidget *widget)
+{
+  GtkTree *tree = GTK_TREE (widget);
+  GtkWidget *child;
+  GList *children;
+  
+  GTK_WIDGET_SET_FLAGS (widget, GTK_MAPPED);
   
   children = tree->children;
   while (children)
@@ -1019,12 +1070,6 @@ gtk_real_tree_select_child (GtkTree   *tree,
   g_return_if_fail (child != NULL);
   g_return_if_fail (GTK_IS_TREE_ITEM (child));
 
-  if (!tree->root_tree)
-    {
-      g_warning (G_STRLOC ": unable to select a child in a tree prior to realization");
-      return;
-    }
-  
   root_selection = tree->root_tree->selection;
   
   switch (tree->root_tree->selection_mode)
index 6c72379abc6b1494e7d5e4bacc82b817b5d84f8c..9a8894d39988ab214a074508bc954ed8199a99f5 100644 (file)
@@ -564,6 +564,7 @@ gtk_tree_item_draw_lines (GtkWidget *widget)
   GtkTreeItem* item;
   GtkTree* tree;
   guint lx1, ly1, lx2, ly2;
+  GdkGC* gc;
 
   g_return_if_fail (widget != NULL);
   g_return_if_fail (GTK_IS_TREE_ITEM (widget));
@@ -574,6 +575,8 @@ gtk_tree_item_draw_lines (GtkWidget *widget)
   if (!tree->view_line)
     return;
 
+  gc = widget->style->text_gc[GTK_STATE_NORMAL];
+
   /* draw vertical line */
   lx1 = item->pixmaps_box->allocation.width;
   lx1 = lx2 = ((lx1 / 2) + (lx1 % 2) + 
@@ -585,7 +588,7 @@ gtk_tree_item_draw_lines (GtkWidget *widget)
     ly2 = (ly2 / 2) + (ly2 % 2);
 
   if (tree != tree->root_tree)
-    gdk_draw_line (widget->window, widget->style->black_gc, lx1, ly1, lx2, ly2);
+    gdk_draw_line (widget->window, gc, lx1, ly1, lx2, ly2);
 
   /* draw vertical line for subtree connecting */
   if(g_list_last(tree->children)->data != (gpointer)widget)
@@ -594,15 +597,14 @@ gtk_tree_item_draw_lines (GtkWidget *widget)
   lx2 += DEFAULT_DELTA;
 
   if (item->subtree && item->expanded)
-    gdk_draw_line (widget->window, widget->style->black_gc,
+    gdk_draw_line (widget->window, gc,
                   lx2, ly2, lx2, widget->allocation.height);
 
   /* draw horizontal line */
   ly1 = ly2;
   lx2 += 2;
 
-  gdk_draw_line (widget->window, widget->style->black_gc,
-                lx1, ly1, lx2, ly2);
+  gdk_draw_line (widget->window, gc, lx1, ly1, lx2, ly2);
 
   lx2 -= DEFAULT_DELTA+2;
   ly1 = 0;
@@ -617,7 +619,7 @@ gtk_tree_item_draw_lines (GtkWidget *widget)
          lx1 = lx2 -= tree->indent_value;
          
          if (g_list_last (tree->children)->data != item)
-           gdk_draw_line (widget->window, widget->style->black_gc, lx1, ly1, lx2, ly2);
+           gdk_draw_line (widget->window, gc, lx1, ly1, lx2, ly2);
          item = GTK_TREE_ITEM (tree->tree_owner);
          tree = GTK_TREE (GTK_WIDGET (tree)->parent);
        }